package com.frejoys.common.vo.store;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

@Data
public class StoreDetailVo {

    // 店名
    @Schema(type = "String", name = "name", description = "店名", required = true, defaultValue = "1")
    private String name;

    @Schema(type = "String", name = "tel", description = "电话", required = true, defaultValue = "15522222222")
    private String tel;

    // 品类id
    @Schema(type = "Integer", name = "categoryId", description = "品类id", required = true, defaultValue = "1")
    private Integer categoryId;

    @Schema(type = "String", name = "address", description = "地址", required = false, defaultValue = "xx小区602")
    private String address;

    // 街道地址
    @Schema(type = "String", name = "street", description = "街道地址", required = true, defaultValue = "1")
    private String street;

    // 经度
    @Schema(type = "Double", name = "lng", description = "经度", required = true, defaultValue = "1")
    private Double lng;

    // 纬度
    @Schema(type = "Double", name = "lat", description = "纬度", required = true, defaultValue = "1")
    private Double lat;

    // 品类名称
    @Schema(type = "String", name = "categoryName", description = "品类名称", required = true, defaultValue = "1")
    private String categoryName;

    // Logo
    @Schema(type = "String", name = "fLogo", description = "Logo文件", required = true, defaultValue = "1")
    private String fLogo;

    // 店封面广告图
    @Schema(type = "String", name = "fCover", description = "店封面广告图文件", required = true, defaultValue = "1")
    private String fCover;

    // 店铺展示图
    @Schema(type = "String", name = "fCoverShow", description = "店铺展示图文件", required = true, defaultValue = "1")
    private String fCoverShow;

    // Logo
    @Schema(type = "String", name = "logo", description = "Logo", required = true, defaultValue = "1")
    private String logo;

    // 店封面广告图
    @Schema(type = "String", name = "cover", description = "店封面广告图", required = true, defaultValue = "1")
    private String cover;

    @Schema(type = "String", name = "district", description = "区县", required = true, defaultValue = "111")
    private String district;

    // 店铺展示图
    @Schema(type = "String", name = "coverShow", description = "店铺展示图", required = true, defaultValue = "1")
    private String coverShow;

    // 店类型：0无，1品牌店
    @Schema(type = "Integer", name = "type", description = "店类型：0无，1品牌店", required = true, defaultValue = "1")
    private Integer type;

    // 上架状态：0下架中，1申请上架，2上架中
    @Schema(type = "Integer", name = "shelves", description = "上架状态：0下架中，1申请上架，2上架中", required = true, defaultValue = "1")
    private Integer shelves;

    // 营业起始时间，小时00
    @Schema(type = "String", name = "startTime", description = "营业起始时间", required = true, defaultValue = "1")
    private String startTime;

    // 营业结束时间，小时24
    @Schema(type = "String", name = "endTime", description = "营业结束时间", required = true, defaultValue = "1")
    private String endTime;


    // 店铺收益金额
    @Schema(type = "BigDecimal", name = "walletMoney", description = "店铺收益金额", required = true, defaultValue = "1")
    private BigDecimal walletMoney;

    // 累计订单金额
    @Schema(type = "BigDecimal", name = "price", description = "累计订单金额", required = true, defaultValue = "1")
    private BigDecimal price;

    // 累计返利金额
    @Schema(type = "BigDecimal", name = "rebateMoney", description = "累计返利金额", required = true, defaultValue = "1")
    private BigDecimal rebateMoney;

    // 累计推广金额
    @Schema(type = "BigDecimal", name = "promotionMoney", description = "累计推广金额", required = true, defaultValue = "1")
    private BigDecimal promotionMoney;

    // 累计佣金金额
    @Schema(type = "BigDecimal", name = "commissionMoney", description = "累计佣金金额", required = true, defaultValue = "1")
    private BigDecimal commissionMoney;

    // 累计店铺收益金额
    @Schema(type = "BigDecimal", name = "money", description = "累计店铺收益金额", required = true, defaultValue = "1")
    private BigDecimal money;


    @Schema(type = "String", name = "payCode", description = "类型(app只有线上码)：1.线上码，2.线下码", required = true, defaultValue = "1")
    private String payCode;

    @Schema(type = "List<StoreCategoryVo>", name = "storeCategoryVos", description = "店铺类目", required = true, defaultValue = "1")
    private List<StoreCategoryVo> storeCategoryVos;

    @Schema(type = "StoreActivityDetailsVo", name = "storeActivityDetailsVo", description = "活动", required = true)
    private StoreActivityDetailsVo storeActivityDetailsVo;
}

